package cn.com.css.taxInspection.statistics.mapper;

import cn.com.css.taxInspection.statistics.entity.*;
import cn.com.css.taxInspection.statistics.vo.JcjfReq;
import cn.com.css.taxInspection.workquality.vo.req.SelectchiefReqVo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.MapKey;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;
import java.util.Map;

@Mapper
public interface StatisticsMapper extends BaseMapper<Object> {
    @MapKey("queryJajz")
    List<Map<String, String>> queryJajz(String swjgmc);

    @MapKey("jcjfStatistics")
    List<Jcjf> jcjfStatistics(String statisticsYear, String statisticsMonth, String excludeSwjgDm, String swjgDm);

    List<Jcjf> jcjfStatisticsXz(String statisticsYear, String statisticsMonth, String swryDm);

    List<Jcjf> jcjfStatisticsByFullYear(String statisticsYear, String statisticsMonth, String excludeSwjgDm, String swjgDm);

    List<Sljf> sljfStatistics(String statisticsYear, String statisticsMonth, String excludeSwjgDm, String swjgDm);

    List<Sljf> sljfStatisticsXz(String statisticsYear, String statisticsMonth, String swryDm);

    List<Sljf> sljfStatisticsByFullYear(String statisticsYear, String statisticsMonth, String excludeSwjgDm, String swjgDm);

    List<Zxjf> zxjfStatistics(String statisticsYear, String statisticsMonth, String excludeSwjgDm, String swjgDm);

    List<Zxjf> zxjfStatisticsXz(String statisticsYear, String statisticsMonth, String swryDm);

    List<Zxjf> zxjfStatisticsByFullYear(String statisticsYear, String statisticsMonth, String excludeSwjgDm, String swjgDm);

    List<IncomeCheckSupplement> rukuStatistics(JcjfReq req);

    List<IncomeCheckSupplement> chabuStatistics(JcjfReq req);

    @MapKey("indexQsjcsr")
    List<Map<String, Object>> indexQsjcsr();

    @MapKey("indexQsjcsrNew")
    List<Map<String, Object>> indexQsjcsrNew(String swjgDm);

    @MapKey("indexQsjcsrSysj")
    List<Map<String, Object>> indexQsjcsrSysj();

    @MapKey("indexQsjcsrSysjNew")
    List<Map<String, Object>> indexQsjcsrSysjNew();

    @MapKey("indexCb")
    List<Map<String, Object>> indexCb();

    @MapKey("indexCbByMonth")
    List<Map<String, Object>> indexCbByMonth(String swjgDm);

    @MapKey("indexCbBySwjg")
    List<Map<String, Object>> indexCbBySwjg(String swjgDm);

    @MapKey("indexRk")
    List<Map<String, Object>> indexRk();

    @MapKey("indexRkByMonth")
    List<Map<String, Object>> indexRkByMonth(String swjgDm);

    @MapKey("indexRkBySwjg")
    List<Map<String, Object>> indexRkBySwjg(String swjgDm);

    @MapKey("indexCbSysj")
    List<Map<String, Object>> indexCbSysj();

    @MapKey("indexCbSysjByMonth")
    List<Map<String, Object>> indexCbSysjByMonth();

    @MapKey("jianjinzhan")
    List<Map<String, Object>> jianjinzhan(String swjgDm);

    @MapKey("anyuanAndanjian")
    List<Map<String, Object>> anyuanAndanjian(String swjgDm);

    @MapKey("anyuanAndanjianSysj")
    List<Map<String, Object>> anyuanAndanjianSysj();

    @MapKey("jajzayjzb")
    List<Map<String, Object>> jajzayjzb();

    @MapKey("anyuanAndanjian_swry")
    List<Map<String, Object>> anyuanAndanjian_swry(String swjgDm);

    @MapKey("jianjinzhan_ddtxtgetlocalajbhs")
    List<Map<String, Object>> jianjinzhan_ddtxtgetlocalajbhs(String swjgDm, String caseId);

    @MapKey("jianjinzhan_ddtxtDatas")
    List<Map<String, Object>> jianjinzhan_ddtxtDatas(List<String> ajbhs);

    @MapKey("jianjinzhanSysj")
    List<Map<String, Object>> jianjinzhanSysj();

    @MapKey("chabuandruku")
    List<Map<String, Object>> chabuandruku(String swjgDm);

    @MapKey("chabuandrukuSysj")
    List<Map<String, Object>> chabuandrukuSysj();

    @MapKey("indexCbSysjBySwjg")
    List<Map<String, Object>> indexCbSysjBySwjg();

    @MapKey("indexRkSysj")
    List<Map<String, Object>> indexRkSysj();

    @MapKey("indexRkSysjByMonth")
    List<Map<String, Object>> indexRkSysjByMonth();

    @MapKey("indexRkSysjBySwjg")
    List<Map<String, Object>> indexRkSysjBySwjg();

    @MapKey("indexAjxxZzt")
    List<Map<String, Object>> indexAjxxZzt();

    @MapKey("indexAjxxZztNew")
    List<Map<String, Object>> indexAjxxZztNew(String swjgDm);

    @MapKey("indexAjxxZztSysj")
    List<Map<String, Object>> indexAjxxZztSysj();

    @MapKey("indexAjxxZztSysjNew")
    List<Map<String, Object>> indexAjxxZztSysjNew();

    @MapKey("indexJiAn")
    List<Map<String, Object>> indexJiAn();

    @MapKey("indexNknsh")
    List<Map<String, Object>> indexNknsh();

    @MapKey("gzzxFirstLevelSysj")
    List<Map<String, Object>> gzzxFirstLevelSysj();

    @MapKey("gzzxFirstLevel")
    List<Map<String, Object>> gzzxFirstLevel(String swjgDm);

    @MapKey("gzzxFirstLevelKs")
    List<Map<String, Object>> gzzxFirstLevelKs(String swjgDm);

    @MapKey("gzzxSecondLevelJcgxjf")
    List<Map<String, Object>> gzzxSecondLevelJcgxjf(String swjgDm);

    @MapKey("gzzxSecondLevelZfxnjf")
    List<Map<String, Object>> gzzxSecondLevelZfxnjf(String swjgDm);

    @MapKey("gzzxSecondLevelCgyyjf")
    List<Map<String, Object>> gzzxSecondLevelCgyyjf(String swjgDm);

    @MapKey("gzzxSecondLevelQtxmjf")
    List<Map<String, Object>> gzzxSecondLevelQtxmjf(String swjgDm);

    @MapKey("gzzxSecondLevelKsfzrjf")
    List<Map<String, Object>> gzzxSecondLevelKsfzrjf(String swjgDm);

    @MapKey("gzzxThirdLevelJccbjfMx")
    List<Map<String, Object>> gzzxThirdLevelJccbjfMx(SelectchiefReqVo req);

    @MapKey("gzzxThirdLevelJcrkjfMx")
    List<Map<String, Object>> gzzxThirdLevelJcrkjfMx(SelectchiefReqVo req);

    @MapKey("gzzxThirdLevelAjccsxjfMx")
    List<Map<String, Object>> gzzxThirdLevelAjccsxjfMx(SelectchiefReqVo req);

    @MapKey("gzzxThirdLevelAjdxjfMx")
    List<Map<String, Object>> gzzxThirdLevelAjdxjfMx(SelectchiefReqVo req);

    @MapKey("gzzxThirdLevelDchsajjfMx")
    List<Map<String, Object>> gzzxThirdLevelDchsajjfMx(SelectchiefReqVo req);

    @MapKey("gzzxThirdLevelDbajjfMx")
    List<Map<String, Object>> gzzxThirdLevelDbajjfMx(SelectchiefReqVo req);

    long gzzxThirdLevelJccbjfMxTotal(String swjgDm);

    long gzzxThirdLevelJcrkjfMxTotal(String swjgDm);

    long gzzxThirdLevelAjccsxjfMxTotal(String swjgDm);

    long gzzxThirdLevelAjdxjfMxTotal(String swjgDm);

    long gzzxThirdLevelDchsajjfMxTotal(String swjgDm);

    long gzzxThirdLevelDbajjfMxTotal(String swjgDm);
}